POV-Ray : Newsgroups : povray.text.scene-files : Try this blob : Try this blob Server Time
2 Jul 2024 02:48:46 EDT (-0400)
  Try this blob  
From: Alf Peake
Date: 25 Aug 2002 15:53:51
Message: <3d6935cf$1@news.povray.org>
/*
Check _Snail racing..._ in p.g for more info.
Anyone think they can reduce the render time with Fltr=1?
Watch linewraps in area_light and #default in posting.

Alf
*/

// Persistence of Vision Ray Tracer Scene Description File
// File: blob99.pov
// Vers: 3.5
// Desc: Warning: Has long render time with Fltr>0.9
// Date: 25 Aug 2002
// Auth: Alf Peake, gw3### [at] qslnet

//+w320 +h240 +gastats.out
#version 3.5;

#declare Photons = no; // Want photons?
#declare Blurr = no; // Want focal blur?
#declare Fltr = 0; // Filter, between 0 and 1.

global_settings{
   assumed_gamma 1.0
   max_trace_level 60
   #if (Photons)
      photons {
         count 50000  // Whatever, start low.
//      save_file "Photns"
//      load_file "Photns"
      }
   #end
}

camera{ location <-2.7, 3.7,-5.4> // Or -z*7 and rotate camera
   up y right x*image_width/image_height
   angle 52
   look_at <-0.5,-0.6,-0.3>
   #if (Blurr)
      aperture 0.05
      blur_samples 20
      focal_point <0,0,0>
      confidence 0.97
      variance 0.005
   #end
}

light_source{ <500, 700, -50> 1.4
//    area_light <50, 0, 0>, <0, 0, 50>, 3, 3 jitter adaptive 1
circular orient
   photons{ refraction on reflection on }
}
background{ rgb 1 }

//default{ finish{ phong 0.7 phong_size 100 diffuse 0.8 ambient
0.2 } }
//box{ <-4,-0.82,-4.5>,<10,-0.82,10> pigment{ rgb 0.7 } }

#declare NwClrV3 = // The pigment gradient
spline{ linear_spline
   0.0, <1, 1, 0>
   1/6, <0.15, 1, 0.15>
   2/6, <0, 1, 1>
   3/6, <0.15, 0.15, 1>
   4/6, <1, 0, 1>
   5/6, <1, 0.05, 0.05>
   1.0, <1, 1, 0>
  }

#declare Rad1 = 2; // Torus major
#declare Rad2 = 0.52; // Torus minor
#declare Rad3 = 0.46; // Swept sphere's radius

#declare NBalls=600;   // Total spheres.
#declare MajorTurns=4; // Use 2
#declare MinorTurns=7; // and 3 for a simpler blob.
#declare BallsPerMinorTurn=NBalls/MinorTurns;
#declare Inc1=MajorTurns*360/NBalls;
#declare Inc2=360/BallsPerMinorTurn;

#declare Count=0;

blob{ threshold 0.7
   #while (Count<NBalls)
      sphere{ 0, Rad3, 0.35
      // I think this is more readable than vrotate() family
         translate z*Rad2
         rotate <Inc2*Count-40,0,0> // -40 optional
         translate z*Rad1
         rotate <0,Inc1*Count,0>
         pigment{ rgb NwClrV3( Count/NBalls ) filter Fltr }
         #if (Fltr)
            finish{ phong 0.7 phong_size 300
            diffuse 0 ambient 0.1
            reflection { 0.05, 0.15 fresnel on } conserve_energy
            }
         #else
            finish{ phong 0.7 phong_size 100 diffuse 0.8 ambient 0.2 }
         #end
      } // sphere
      #declare Count=Count+1;
   #end // while
   interior{ ior 1.5 }
   photons{
      target 0.2
      refraction on
      reflection off
      collect off
   }
} // blob


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.